2
תגובות
שלום,
אני מחפש דרך להפוך סיומות בעברית של מילים לתו מסויים.
כתבתי את השורה הזו:
מה שהיא אמורה לעשות, (ועושה מעולה באנגלית), זה כל מילה עם הסיומת שיש בסוגריים, להמיר ל-%
כשאני מפעיל את זה על סיומות בעברית זה פשוט לא מוצא את הסיומת...
נראה לי שזה עניין של קידוד, למרות שהכל אצלי זה UTF-8
אני מחפש דרך להפוך סיומות בעברית של מילים לתו מסויים.
כתבתי את השורה הזו:
preg_replace("%(ות)\b%i", '%', $q);
מה שהיא אמורה לעשות, (ועושה מעולה באנגלית), זה כל מילה עם הסיומת שיש בסוגריים, להמיר ל-%
כשאני מפעיל את זה על סיומות בעברית זה פשוט לא מוצא את הסיומת...
נראה לי שזה עניין של קידוד, למרות שהכל אצלי זה UTF-8
2 תשובות
מצאתי את הפתרון,
צריך להוסיף את הMODIFIER u,
כלומר השורה תראה:
preg_replace("%(ות)\b%iu", '%', $q);
המודיפייר u מפעיל את התמיכה של מנוע הביטויים הרגולריים ב unicode ( ב utf-8)
על מודיפיקטורים נוספים אפשר לקרוא פה.
ותודה שדאגת לחזור ולספר על הפתרון :)